package cn.bearspark.file.provider.service;

import java.util.List;

/**
 * 文件服务的服务接口
 *
 * @author f
 */
public interface FileService {

    /**
     * 准备删除指定的文件
     *
     * @param filename   指定的文件名
     * @param moduleCode 文件所属模块的枚举值
     */
    void prepareDeletion(String filename, int moduleCode);

    /**
     * 批量阻止删除指定的文件
     *
     * @param urlList 指定的文件的路径的集合
     */
    void preventDeletion(List<String> urlList);

    /**
     * 删除指定的文件
     *
     * @param filenameList 指定的文件名集合
     */
    void onFileDeadline(List<String> filenameList);

    /**
     * 批量删除指定的文件
     *
     * @param urlList 指定的文件的路径的集合
     */
    void deleteBatch(List<String> urlList);
}
